home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2004 #9 / Amiga Plus CD - 2004 - No. 09.iso / amigaplus / tools / dev_libs / feelin040718 / demos / test.e < prev    next >
Text File  |  2004-08-03  |  1KB  |  64 lines

  1. OPT PREPROCESS
  2.  
  3. MODULE 'feelin','libraries/feelin',
  4.        'dos/dos'
  5.  
  6. CONST NUM = 1000
  7.  
  8. PROC main()
  9.    DEF list:PTR TO LONG,i,
  10.        ds1:datestamp,ds2:datestamp
  11.  
  12.    IF feelinbase := OpenLibrary('feelin.library',FV_VERSION)
  13.       IF list := F_New(NUM + 1 * 4)
  14.          WriteF('This test will create \d instances of FC_Object.\n\n',NUM)
  15.  
  16.          WriteF('F_NewObjA()    ')
  17.  
  18.          Forbid() ; DateStamp(ds1)
  19.  
  20.          FOR i := 0 TO NUM - 1 DO list[i] := F_NewObjA(FC_Object,NIL)
  21.  
  22.          DateStamp(ds2) ; Permit() ; saytime(ds1,ds2)
  23.  
  24.          WriteF('F_DisposeObj() ')
  25.  
  26.          Forbid() ; DateStamp(ds1)
  27.  
  28.          FOR i := 0 TO NUM - 1 DO F_DisposeObj(list[i])
  29.  
  30.          DateStamp(ds2) ; Permit() ; saytime(ds1,ds2)
  31.  
  32.          WriteF('This test will create \d instances of FC_Object.\n\n',NUM)
  33.  
  34.          WriteF('F_NewObjA()    ')
  35.  
  36.          Forbid() ; DateStamp(ds1)
  37.  
  38.          FOR i := 0 TO NUM - 1 DO list[i] := F_NewObjA(FC_Object,NIL)
  39.  
  40.          DateStamp(ds2) ; Permit() ; saytime(ds1,ds2)
  41.  
  42.          WriteF('F_DisposeObj() ')
  43.  
  44.          Forbid() ; DateStamp(ds1)
  45.  
  46.          FOR i := 0 TO NUM - 1 DO F_DisposeObj(list[i])
  47.  
  48.          DateStamp(ds2) ; Permit() ; saytime(ds1,ds2)
  49.  
  50.          F_Dispose(list)
  51.       ENDIF
  52.  
  53.       CloseLibrary(feelinbase)
  54.    ENDIF
  55. ENDPROC
  56.  
  57. PROC saytime(ds1:PTR TO datestamp,ds2:PTR TO datestamp)
  58.    DEF ticks
  59.  
  60.    ticks := ((((ds2.minute - ds1.minute) * 60)) * TICKS_PER_SECOND) + (ds2.tick - ds1.tick)
  61.  
  62.    WriteF('%12.ld per second (%4.ld ticks)\n',NUM * TICKS_PER_SECOND / ticks,ticks)
  63. ENDPROC
  64.